数组去重
要求在原型链上编程
var arr = [1,1,2,2];
var obj = {
	1 : "abc",
	2 : "abc"
}
把数组的属性值添加到对象的属性名上去，hash,挨个访问对象属性名，看看有没有值
obj[1] --> undefined

<script type="text/javascript">
	var arr = [1,1,1,2,2,2];

	Array.prototype.unique = function (){
		var temp = {},
			arr = [],
			len = this.length;//用一个值接收数组长度，避免this.length直接放到循环里重复计算
		for(var i = 0; i < len; i++){//循环目标数组的长度，把数组的每一位拿出看看是否是重复的
			if(! temp[this[i]]){//判断数组当前位的值，作为属性名放到对象里有没有值
				temp[this[i]] = 'abc';//对象的属性名this[i]添加属性值'abc'
				arr.push(this[i]);//给数组添加当前位
			}
		}
		return arr;
	} 
	console.log(arr.unique());
</script>